/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Streams;

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author dgreipl
 */
public class LeseGoogle {

    /**
     * @param args the command line arguments
     */
    static void schreibeDatei(String s) {
        File datei;
        datei = new File("U:\\KMTest.html");

        // Erzeuge einen Writer, um in die Datei zu schreiben
        FileWriter fw;
        try {
            fw = new FileWriter(datei);
            fw.write(s);
            fw.close();
            System.out.println("Datei erfolgreich geschrieben.");
        } catch (Exception ex) {
            System.out.println("Fehler beim Schreiben." + ex);
        }

    }

    static String readFromGoogle() {
        String s = "";
        int totalBytes = 0; // Zaehler für die Anzahl der Bytes
        int bytesGelesen = 0;
        // Diese Zeile muss nicht verstandern werden.
        // Es handelt sich um die Erzeugung eines Puffers mit 4kb
        byte[] buffer = new byte[4096];
        try {
            URL url = new URL("http://www.fh-landshut.de");
            InputStream in = url.openStream();

            while ((bytesGelesen = in.read(buffer)) != - 1) {
                // Die gelesenen Bytes werden aus dem Puffer gelesen
                // und in den String s kopiert.
                s = s + new String(buffer, 0, bytesGelesen);
                totalBytes = totalBytes + bytesGelesen;

               // System.out.println("Gelesen : " + bytesGelesen);
            }
            in.close();

        } catch (Exception ex) {
            Logger.getLogger(LeseGoogle.class.getName()).log(Level.SEVERE, null, ex);
        }
        System.out.println("Bytes gesamt : " + totalBytes);
        return s;
    }

    public static void main(String[] args) {
        // TODO code application logic here
        //schreibeDatei();
        for (int i = 1; i < 1000; i++) {
            System.out.println(i + ": " + new Date());
            String s = readFromGoogle();
        }
        // System.out.println(s);
        // schreibeDatei (s);
    }
}
